package com.entity;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;

/**
 * token表
 * 用于存储用户的token信息，包含用户的角色、token值以及相关的过期时间和新增时间
 * @author team10
 */
@TableName("token")
public class TokenEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 主键id，自动生成
	 */
	@TableId(type = IdType.AUTO)
	private Long id;

	/**
	 * 用户id
	 */
	private Long userid;

	/**
	 * 用户名
	 */
	private String username;

	/**
	 * 表名，标识token所关联的数据表
	 */
	private String tablename;

	/**
	 * 用户角色，可能是admin、user等
	 */
	private String role;

	/**
	 * token值，用于身份认证
	 */
	private String token;

	/**
	 * token过期时间
	 */
	private Date expiratedtime;

	/**
	 * token记录的新增时间
	 */
	private Date addtime;

	// 获取主键id
	public Long getId() {
		return id;
	}

	// 设置主键id
	public void setId(Long id) {
		this.id = id;
	}

	// 获取用户id
	public Long getUserid() {
		return userid;
	}

	// 设置用户id
	public void setUserid(Long userid) {
		this.userid = userid;
	}

	// 获取角色
	public String getRole() {
		return role;
	}

	// 设置角色
	public void setRole(String role) {
		this.role = role;
	}

	// 获取token值
	public String getToken() {
		return token;
	}

	// 获取表名
	public String getTablename() {
		return tablename;
	}

	// 设置表名
	public void setTablename(String tablename) {
		this.tablename = tablename;
	}

	// 设置token值
	public void setToken(String token) {
		this.token = token;
	}

	// 获取token过期时间
	public Date getExpiratedtime() {
		return expiratedtime;
	}

	// 设置token过期时间
	public void setExpiratedtime(Date expiratedtime) {
		this.expiratedtime = expiratedtime;
	}

	// 获取新增时间
	public Date getAddtime() {
		return addtime;
	}

	// 设置新增时间
	public void setAddtime(Date addtime) {
		this.addtime = addtime;
	}

	// 获取用户名
	public String getUsername() {
		return username;
	}

	// 设置用户名
	public void setUsername(String username) {
		this.username = username;
	}

	// 带参构造函数
	public TokenEntity(Long userid, String username, String tablename, String role, String token, Date expiratedtime) {
		super();
		this.userid = userid;
		this.username = username;
		this.tablename = tablename;
		this.role = role;
		this.token = token;
		this.expiratedtime = expiratedtime;
	}

	// 无参构造函数
	public TokenEntity() {
	}

}
